package com.zp.business.entity.register.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.zp.common.excel.annotation.ExcelDictFormat;
import com.zp.common.excel.convert.ExcelDictConvert;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;


/**
 * 挂号明细视图对象
 *
 * @author zhang peng
 * @ date 2023-12-23
 */
@Data
@ExcelIgnoreUnannotated
public class RegistrationItemVo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @ExcelProperty(value = "主键")
    private String id;

    /**
     * 门诊记录ID
     */
    @ExcelProperty(value = "门诊记录ID")
    private String clinicId;

    /**
     * 类别
     */
    @ExcelProperty(value = "类别")
    private String itemClass;

    /**
     * 费用名称
     */
    @ExcelProperty(value = "费用名称")
    private String itemName;

    /**
     * 代码
     */
    @ExcelProperty(value = "代码")
    private String itemCode;

    /**
     * 价表id
     */
    @ExcelProperty(value = "价表id")
    private String priceId;

    /**
     * 数量
     */
    @ExcelProperty(value = "数量")
    private BigDecimal num;

    /**
     * 门诊费用分类
     */
    @ExcelProperty(value = "门诊费用分类", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "clinic_or_visit")
    private String classOnRcpt;

    /**
     * 核算项目科目
     */
    @ExcelProperty(value = "核算项目科目", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "reck_item_class_dict")
    private String classOnReckoning;

    /**
     * 会计科目
     */
    @ExcelProperty(value = "会计科目", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "tally_subject_dict")
    private String subjCode;

    /**
     * 应付费用
     */
    @ExcelProperty(value = "应付费用")
    private BigDecimal costs;

    /**
     * 实付费用
     */
    @ExcelProperty(value = "实付费用")
    private BigDecimal charges;

    private String orgId;

    private String remarks;


}
